Conventional data backup techniques often involve periodically taking point-in-time (PIT) “snapshots” to preserve the state of data stored by computers and virtual machines that are hosted by computers. Typically, a snapshot identifies data storage locations to which data were written since the last data backup was performed or since the last snapshot was taken. Measures may be taken to prevent these data storage locations from being overwritten until a backup of their data is made.
Complex computing systems often involve multiple computer applications being executed on multiple computing platforms, where the applications share data among them. In such systems each computing platform typically manages its own data storage. Conventional data backup techniques as applied to such systems may require each computing platform to take its own snapshot of its own data storage. However, as data are shared between the applications, it may be critical to ensure that snapshots of the various computing platforms be taken at the same point in time in order to maintain data consistency between the applications. Unfortunately, the different computing platforms in such systems often require different amounts of time to create their snapshots.